﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Entidades;
using Datos;
using System.Data;

namespace Logica
{
   public class PresupuestoL
    {
        //inserta nuevo presupuesto
        public static bool NuevoPresupuesto(Presupuesto presupuesto)
        {
            int i = 0;
            i = PresupuestoAD.NuevoPresupuesto(presupuesto);


          
           if (i == 1)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        public static bool PresupuestoByRutIdTratamiento(string rut,int id)
        {
            return PresupuestoAD.PreupuestoByRutIdTratamiento(rut,id);
            
        }


        public static int UltimoPresupuestInsertado()
        {

            return PresupuestoAD.UltimoPresupuestoInsertado();
        }

        public static Presupuesto GetPresupuestoById(int ID)
        {
            return PresupuestoAD.GetPresupuestoById(ID);
        }

       //trae los presupuestos de un paciente por su rut
        public static List<Presupuesto> GetPresupuestoByRutPaciente(string rut)
        {
            

            return PresupuestoAD.GetPresupuestoByRutPaciente(rut);
        }
        public static List<Presupuesto> NGetPresupuestoByRutPaciente(string rut)
        {
            return PresupuestoAD.NGetPresupuestoByRutPacienteNoFinalizado(rut);
        }





        public static List<Presupuesto> GetTratamientosDePresupuestoByRutPaciente(string Rut)
        {

            return PresupuestoAD.GetTratamientosDePresupuestoByRutPaciente(Rut);
        }

        //presupuestos activos por rut paciente
        public static List<Presupuesto> GetPresupuestoByRutPacienteActivo(string Rut)

        { return PresupuestoAD.GetPresupuestoByRutPacienteActivo(Rut); }
        public static List<Presupuesto> NGetPresupuestoByRutPacienteActivo(string Rut)

        { return PresupuestoAD.NGetPresupuestoByRutPacienteActivoNoFinalizado(Rut); }


        //presupuestos en ejecucion por rut paciente
        public static List<Presupuesto> GetPresupuestoByRutPacienteEjecucion(string Rut)
        { return PresupuestoAD.GetPresupuestoByRutPacienteEjecucion(Rut); }
        public static List<Presupuesto> NGetPresupuestoByRutPacienteEjecucion(string Rut)
        { return PresupuestoAD.NGetPresupuestoByRutPacienteEjecucionNoFinalizado(Rut); }

        //presupuestos por rut paciente y nombre de tratamiento
        public static List<Presupuesto> GetPresupuestoByRutPacienteNombreTratamiento(string Rut, string nombre)
        { return PresupuestoAD.GetPresupuestoByRutPacienteNombreTratamiento(Rut, nombre); }
        public static List<Presupuesto> NGetPresupuestoByRutPacienteNombreTratamiento(string Rut, string nombre)
        { return PresupuestoAD.NGetPresupuestoByRutPacienteNombreTratamientoNoFinalizado(Rut, nombre); }

        //presupuestos en ejecucion por rut paciente y nombre de tratamiento
        public static List<Presupuesto> GetPresupuestoByRutPacienteNombreTratamientoEjecucion(string Rut, string nombre)
        { return PresupuestoAD.GetPresupuestoByRutPacienteNombreTratamientoEjecucion(Rut, nombre); }
        public static List<Presupuesto> NGetPresupuestoByRutPacienteNombreTratamientoEjecucion(string Rut, string nombre)
        { return PresupuestoAD.NGetPresupuestoByRutPacienteNombreTratamientoEjecucionNoFinalizado(Rut, nombre); }

        //presupuestos activos por rut paciente y nombre tratamiento
        public static List<Presupuesto> GetPresupuestoByRutPacienteNombreTratamientoActivo(string Rut, string nombre)
        { return PresupuestoAD.GetPresupuestoByRutPacienteNombreTratamientoActivo(Rut, nombre); }
        public static List<Presupuesto> NGetPresupuestoByRutPacienteNombreTratamientoActivo(string Rut, string nombre)
        { return PresupuestoAD.NGetPresupuestoByRutPacienteNombreTratamientoActivoNoFinalizado(Rut, nombre); }


        public static bool EjecutarPresupuesto(int idPresupuesto)
        {
            int i = 0;
            i = PresupuestoAD.EjecutarPresupuesto(idPresupuesto);
            if (i == 1)
            {
                return true;
            }
            else
            {
                return false;
            }
           
        }
        public static string EstadoPresupuesto(int ID)
        {
            return PresupuestoAD.EstadoPresupuesto(ID);
        }
        public static bool FinalizarPresupuesto(int idPresupuesto) {

            int i = 0;
            i = PresupuestoAD.FinalizarPresupuesto(idPresupuesto);
            if (i == 1)
            {
                return true;
            }
            else
            {
                return false;
            }
        
        }



        public static int SesionAcutalPresupuesto(int ID)
        {
            return PresupuestoAD.SesionAcutalPresupuesto(ID);

        }


        public static DataTable Estados()
        {
            return PresupuestoAD.Estados();

        }

        public static DataTable Estadisticas(string estado)
        {
            return PresupuestoAD.Estadisticas(estado);
        }


    }
}
